﻿package com.oet.web.freemarker;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;



import freemarker.template.TemplateException;

public class IndexMain implements Controller

{
//	private YdkSimWebFrontEndService ydkSimFrontEndService;
//
//	public YdkSimWebFrontEndService getYdkSimFrontEndService() {
//		return ydkSimFrontEndService;
//	}
//
//	public void setYdkSimFrontEndService(
//			YdkSimWebFrontEndService ydkSimFrontEndService) {
//		this.ydkSimFrontEndService = ydkSimFrontEndService;
//	}

	public ModelAndView handleRequest(HttpServletRequest request,
			HttpServletResponse response) throws Exception {
		Map map = new HashMap();
		// get all type
//		WebServiceSimListParams listParams = new WebServiceSimListParams();
//		listParams.setPageSize(7);
//		listParams.setPageOffset(0);
//
//		SimWebLibraryListResult result = this.getYdkSimFrontEndService()
//				.getLibraries(listParams);
//		List list = new ArrayList();
//
//		if (result != null && result.getOs().getIsSuccessful()) {
//			List booklist = new ArrayList();
//			List book2list = new ArrayList();
//			for (YdkWebLibrary library : result.getList()) {
//
//				SimWebBookCateListResult bclist = this
//						.getYdkSimFrontEndService().getBookCategroryList(
//								library.getId(), listParams);
//				if (bclist != null && bclist.getOs().getIsSuccessful()) {
//					List categoryList = new ArrayList();
//					for (YdkWebCategory category : bclist.getList()) {
//						categoryList.add(category);
//						map.put("category", category);
//					}
//					library.setCates(categoryList);
//				}
//				list.add(library);
//		
//		WebServiceSimListParams listParamsBook = new WebServiceSimListParams();
//		listParamsBook.setPageSize(5);
//		listParamsBook.setPageOffset(0);
//		
//		
//		SimWebBookListResult webbooklist = this.ydkSimFrontEndService
//				.getBookListByTagName("精品" + library.getName(), listParamsBook);
//		if (webbooklist != null
//				&& webbooklist.getOs().getIsSuccessful()) {
//
//			for (YdkWebBook ywbook : webbooklist.getList()) {
//				book2list.add(webbooklist.getList().get(0));
//				break;
//
//			}
//			webbooklist.getList().remove(0);
//			for (YdkWebBook ywbook : webbooklist.getList()) {
//				booklist.add(ywbook);
//
//			}
//
//		}
//		map.put("book2list", book2list);
//		map.put("booklist", booklist);
//	}
//	map.put("libraryList", list);
//}
//
//		// 排行榜
//		SimWebBookCuStatListResult resultByDay = this
//				.getYdkSimFrontEndService()
//
//				.getBookCuStatsByDayClick(listParams);// 日点击
//		SimWebBookCuStatListResult resultByMonth = this
//				.getYdkSimFrontEndService().getBookCuStatsByMonthClick(
//						listParams);// 月点击
//		SimWebBookCuStatListResult resultByWeek = this
//				.getYdkSimFrontEndService().getBookCuStatsByWeekClick(
//						listParams);// 周点击
//		List resultByDayList = new ArrayList();
//		List resultByMonthList = new ArrayList();
//		List resultByWeekList = new ArrayList();
//		List bookDigestsList = new ArrayList();
//		if (resultByDay != null && resultByDay.getOs().getIsSuccessful()) {
//			for (YdkWebBookCuStat webbook : resultByDay.getList()) {
//				resultByDayList.add(webbook);
//			}
//		}
//		if (resultByMonth != null && resultByMonth.getOs().getIsSuccessful()) {
//
//			for (YdkWebBookCuStat webbook : resultByMonth.getList()) {
//				resultByMonthList.add(webbook);
//			}
//		}
//		if (resultByWeek != null && resultByWeek.getOs().getIsSuccessful()) {
//
//			for (YdkWebBookCuStat webbook : resultByWeek.getList()) {
//				resultByWeekList.add(webbook);
//			}
//		}
//		request.getSession().setAttribute("resultByDayList", resultByDayList);
//		request.getSession().setAttribute("resultByMonthList",
//				resultByMonthList);
//		request.getSession().setAttribute("resultByWeekList", resultByWeekList);
//
//		// 最新文摘
//		listParams.setPageSize(15);
//		SimWebDigestListResult digestListResult = this
//				.getYdkSimFrontEndService().getRecommandedBookDigests(
//						listParams);
//		if (digestListResult != null
//				&& digestListResult.getOs().getIsSuccessful()) {
//
//			for (YdkWebBookDigest bookDigests : digestListResult.getList()) {
//				bookDigestsList.add(bookDigests);
//			}
//		}
//		map.put("bookDigestsList", bookDigestsList);
//
//		// 尝鲜书架
//		WebServiceSimListParams listParams1 = new WebServiceSimListParams();
//		listParams1.setPageSize(4);
//		listParams1.setPageOffset(0);
//		SimWebBookListResult webBookListResult = this
//				.getYdkSimFrontEndService().getBookListByTagName("尝鲜书架",
//						listParams1);
//
//		map.put("position1", webBookListResult);
//
//		// 畅销书架
//		listParams1.setPageSize(3);
//		SimWebBookListResult popwebBookListResult = this
//				.getYdkSimFrontEndService().getBookListByTagName("畅销书架",
//						listParams1);
//		map.put("position2", popwebBookListResult);
//
//		// 黑板报
//		listParams1.setPageSize(4);
//		List blackboardList = new ArrayList();
//		SimWebEventListResult blackboardResult = this
//				.getYdkSimFrontEndService().getEvnetsByCateName("黑板报",
//						listParams1);
//		if (blackboardResult != null
//				&& blackboardResult.getOs().getIsSuccessful()) {
//			for (YdkWebEvent event : blackboardResult.getList()) {
//				blackboardList.add(event);
//			}
//		}
//		request.getSession().setAttribute("blackboard", blackboardList);
//
//		// 阅读客大本营
//		listParams1.setPageSize(4);
//		List eventlist = new ArrayList();
//
//		SimWebEventListResult EventResult = this.getYdkSimFrontEndService()
//				.getEvnetsByCateName("阅读客活动大本营", listParams1);
//		if (EventResult != null && EventResult.getOs().getIsSuccessful()) {
//			for (YdkWebEvent webevent : EventResult.getList()) {
//				eventlist.add(webevent);
//			}
//			map.put("EventResult", eventlist);
//		}
//
//		// 最新连载
//		listParams1.setPageSize(8);
//		SimWebBookListResult SimWebBookListResult4 = this
//				.getYdkSimFrontEndService().getBookListByTagName("最新连载",
//						listParams1);
//		map.put("position4", SimWebBookListResult4);
//
//		// 本周新书
//		listParams1.setPageSize(15);
//		SimWebBookListResult SimWebBookListResult6 = this
//				.getYdkSimFrontEndService().GetNewBooksByDate(listParams1);
//		map.put("position6", SimWebBookListResult6);
//
//		// 新书预售
//		listParams1.setPageSize(4);
//		SimWebBookListResult simWebBookListResult5 = this
//				.getYdkSimFrontEndService().getBookListByTagName("新书预售",
//						listParams1);
//		request.getSession().setAttribute("position5", simWebBookListResult5);
//		// map.put("position5", simWebBookListResult5);
//
//		// 经典重读
//		listParams1.setPageSize(7);
//		SimWebBookListResult SimWebBookListResult7 = this
//				.getYdkSimFrontEndService().getBookListByTagName("经典重读",
//						listParams1);
//		request.getSession().setAttribute("position7", SimWebBookListResult7);
//
//		// 英文原版图书
//		listParams1.setPageSize(4);
//		SimWebBookListResult SimWebBookListResult8 = this
//				.getYdkSimFrontEndService().getBookListByTagName("英文原版图书专区",
//						listParams1);
//		request.getSession().setAttribute("position8", SimWebBookListResult8);
//
//		// 作者会客厅
//		listParams1.setPageSize(3);
//		SimWebInterviewListResult interviewsResult = this
//				.getYdkSimFrontEndService()
//				.getRecommandedInterview(listParams1);
//
//		if (interviewsResult != null
//				&& interviewsResult.getOs().getIsSuccessful()) {
//			List interviewList2 = new ArrayList();
//			for (YdkWebInterview webinterview : interviewsResult.getList()) {
//				interviewList2.add(webinterview);
//			}
//			request.getSession().setAttribute("interviews", interviewList2);
//		}
//
//		// 精品文摘
//		listParams1.setPageSize(6);
//		SimWebDigestListResult bookDigests = this.getYdkSimFrontEndService()
//				.getRecommandedBookDigests(listParams1);
//
//		if (bookDigests != null && bookDigests.getOs().getIsSuccessful()) {
//			List bookDigestsList2 = new ArrayList();
//			for (YdkWebBookDigest bookDigests2 : bookDigests.getList()) {
//				bookDigestsList2.add(bookDigests2);
//			}
//			request.getSession().setAttribute("bookDigests", bookDigestsList2);
//		}
//
//		// 大家正在关注
//		listParams1.setPageSize(9);
//		SimWebBookCuStatListResult custatListResult = this
//				.getYdkSimFrontEndService().getBookCuStatsByFreshDate(
//						listParams1);
//		if (custatListResult != null
//				&& custatListResult.getOs().getIsSuccessful()) {
//			List cuList = new ArrayList();
//			for (YdkWebBookCuStat bookCuStat : custatListResult.getList()) {
//				YdkWebBook bookListResult = this.getYdkSimFrontEndService()
//						.getBookById(bookCuStat.getYdkBookId());
//				bookCuStat.setImageSmall(bookListResult.getImageSmall());
//				cuList.add(bookCuStat);
//			}
//			map.put("custatListResult", cuList);
//		}
//
//		// 主题阅读
//		listParams1.setPageSize(5);
//		SimWebBookTagListResult bookTagListResult = this
//				.getYdkSimFrontEndService().getRecommandedBookTag(listParams1);
//		if (bookTagListResult != null
//				&& bookTagListResult.getOs().getIsSuccessful()) {
//			List bookTagList = new ArrayList();
//			listParams1.setPageSize(1);
//			for (YdkWebBookTag bookTag : bookTagListResult.getList()) {
//
//				SimWebBookListResult bookListResult = this
//						.getYdkSimFrontEndService().getBookListByTagName(
//								bookTag.getName(), listParams1);
//				if (bookListResult != null
//						&& bookListResult.getOs().getIsSuccessful()) {
//					for (YdkWebBook book : bookListResult.getList()) {
////						System.out.println(book.getImageLarge());
//						bookTag.setImageSmall(book.getImageSmall());
//					}
//				}
//
//				bookTagList.add(bookTag);
//			}
//			map.put("bookTagListResult", bookTagList);
//		}
		
//		String templateFilePath="D://workspace/ydk//WebRoot//freemarker//indexmain.ftl";
//		String htmlFilePath="D://workspace/ydk//WebRoot//freemarker//indexmain.jsp";

		
		String realPath = request.getSession().getServletContext().getRealPath(
		"/");
//		String templateFilePath="D://workspace//ydk//WebRoot//freemarker//righttop.ftl";
		String templateFilePath=realPath + "freemarker\\indexmain.ftl";
//		String htmlFilePath="D://workspace//ydk//WebRoot//freemarker//righttop.jsp";
		String htmlFilePath=realPath + "indexmain.jsp";
		
		templateFilePath = templateFilePath.replace("\\", "//");
		htmlFilePath = htmlFilePath.replace("\\", "//");
		
		try {
			ReadFreemaker.geneHtmlFile(templateFilePath, htmlFilePath, map);
		} catch (IOException e) {
			e.printStackTrace();
		} catch (TemplateException e) {
			e.printStackTrace();
		}
		return null;
		
	
	}

}
